package com.qk.management.service;

import com.qk.common.PageResult;
import com.qk.dto.course.CourseDTO;
import com.qk.entity.Course;

import java.util.List;

/**
 *
 * @author MrZhao
 * @created 2025-10-12 22:49
 * @description 课程管理业务层接口
 *
 */
public interface CourseService {
    /**
     * 根据学科id查询课程列表
     * @param subjectId 学科id
     * @return List<Course>
     */
    List<Course> listBySubject(Integer subjectId);
    /**
     * 获取所有课程列表
     * @return List<Course>
     */
    List<Course> list();
    /**
     * 修改课程
     * @param dto 修改参数
     */
    void updateById(CourseDTO dto);
    /**
     * 根据id查询课程
     * @param id 课程id
     * @return Course
     */
    Course getById(Integer id);
    /**
     * 根据id删除课程
     * @param id 课程id
     */
    void deleteById(Integer id);
    /**
     * 添加课程
     * @param dto 修改参数
     */
    void add(CourseDTO dto);
    /**
     * 分页查询课程列表
     * @param dto 修改参数
     */
    PageResult<Course> page(CourseDTO dto);

}
